package com.haibo.entity.model;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * @Author : 刘海波
 * @Date: 2025/9/16 15:22
 * @Description: 病历质控-细表
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@Accessors(chain = true)
@ToString(callSuper = true)
@EqualsAndHashCode(callSuper = false)
@TableName(value = "emr_result_item")
public class MedicalRecordGenerationItemDO implements Serializable {

    /**
     * 主键
     */
    @TableField(value = "id")
    private Long id;

    /**
     * 病历生成主表ID
     */
    @TableField(value = "medical_record_id")
    private Long medicalRecordId;

    /**
     * 就诊ID
     */
    @TableField(value = "visit_id")
    private String visitId;

    /**
     * 病历类型。1：门诊、2：首程、3：入院记录、7：出院记录
     */
    @TableField(value = "medical_category")
    private Integer medicalCategory;

    /**
     * 病历内容对应key
     */
    @TableField(value = "label")
    private String label;

    /**
     * 病历内容对应value
     */
    @TableField(value = "value")
    private String value;

    /**
     * 病历内容对应序号
     */
    @TableField(value = "sort")
    private Integer sort;

    /**
     * 病历内容结构化后的内容
     */
    @TableField(value = "struct_content")
    private String structContent;

    /**
     * 创建时间
     */
    @TableField(value = "create_time")
    private LocalDateTime createTime;

    /**
     * 修改时间
     */
    @TableField(value = "update_time")
    private LocalDateTime updateTime;

    /**
     * 逻辑删除标识。1：已删除、0：未删除
     */
    private Integer status;

}
